package com.ruyuan.eshop.common.dao;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruyuan.eshop.common.domain.entity.OrderDO;
import com.ruyuan.eshop.common.domain.vo.OrderSkuVO;
import com.ruyuan.eshop.common.enums.CommentStatusEnum;
import com.ruyuan.eshop.common.enums.OrderServiceStatusEnum;
import com.ruyuan.eshop.common.enums.OrderStatusEnum;

import java.util.List;

/**
 * 订单DAO
 * @author pwd
 * @version 1.0
 */
public interface OrderDAO extends IService<OrderDO> {

    void updateServiceStatus(String orderSn, OrderServiceStatusEnum serviceStatus);

    void updateOrderPrice(Double orderPrice, Double orderDiscoutPrice, List<OrderSkuVO> list, String orderSn);

    void updateCommentStatus(String orderSn, CommentStatusEnum commentStatus);

    void updateItemJson(String itemsJson, String orderSn);

    void updateOrderStatus(String orderSn, OrderStatusEnum orderStatus);

    void updatePaymentInfo(String orderSn, String methodName);

    void updateOrderPriceAndTime(String orderSn, long nowTime, Double payPrice);

    void updateOrderPriceAndTimeAndPayNo(String orderSn, long nowTime, Double payPrice, String returnTradeNo);

    void updateOrderLogic(String orderSn, String logiName, Long logiId, long nowTime, String deliveryNo);

    void editOrderShopName(Long shopId, String shopName);

    void updateOrderPayTime(String orderSn, long nowTime);
}
